1. Field of the Invention
The present invention relates to signal processing, and, in particular, to the routing of signals through telecommunications systems.
2. Description of the Related Art
A typical telecommunications system has one or more switches that route signals for transmission between end users of the system. Each switch is able simultaneously to receive incoming signals originating at a plurality of different end users and route those received incoming signals for transmission as outgoing signals to a plurality of different destinations (i.e., various end users).
In order to maintain a high quality of communications service, it is very important for the switches of a telecommunications system to operate efficiently and reliably. If a component within a switch of a telecommunications systems fails during on-line routing operations, it is important for the switch to be able to detect that failure within a relatively short period of time and then take actions necessary to ensure that system performance requirements are met. These actions typically involve automatically switching the functional responsibilities from the failed component to a redundant or backup component, typically referred to as a protection component.
If data is lost during these so-called fault protection switching operations, the total recovery time includes the time that it takes to detect the failure plus the time that it takes to perform the protection switching to restore the switch to its full operating capability. If the total recovery time is kept below about 50 msec, such protection switching is referred to as hitless switching, since the human ear can tolerate gaps in telephony service of that duration. If, in addition to a recovery time of less than 50 msec, the switch buffers a sufficient amount of data to ensure that no data is lost during the protection switching, then such protection switching is referred to as errorless switching. In errorless switching, there is technically no recovery time, since there is no loss of data from which to recover. In that case, there is only a detection time, which dictates how much data need to be buffered to ensure errorless switching. The shorter the detection time, the less data need to be buffered, which is typically a desirable goal.
The present invention is directed to a technique for providing fault protection in a telecommunications switch. The present invention provides a protection switching scheme that can be implemented to keep the detection time below about 60 nanosec, thereby providing hitless switching. If, in addition, the switch buffers an equivalent amount of data, the protection switching can be implemented with no loss of data as errorless switching.
According to the present invention, in a distributed switch architecture, each incoming signal is sliced into a plurality of sub-signals. A checksum function is applied to subsets of data in each sub-signal to generate and add a checkbit to the sub-signal for each subset of data. Two copies of each augmented sub-signal are routed in parallel through redundant portions of the distributed switch fabric. Only one sub-signal from each pair of routed sub-signals is selected for use in generating the corresponding outgoing signal, which is generated by combining data from selected routed sub-signals corresponding to all of the original sub-signals. Checksum analysis is performed on each pair of routed sub-signals to determine if a fault has occurred. If a fault is detected in the routed sub-signal currently being selected for use in generating the outgoing signal, the selection is changed so that the other routed sub-signal is used. The checkbits are preferably added to the sub-signals in place of terminated overhead data in the transmission format of the incoming signal. By appropriate selection of the size of each subset of data (i.e., if the size is not too small), the number of checkbits added to the sub-signals will not increase the size of the data routed through the distributed switch fabric relative to the size of the data in the transmission format of the incoming signal. In addition, an appropriate selection of the size of each subset of data (i.e., if the size is not too big) ensures that, for a single-point failure, the fault protection scheme of the present invention will satisfy requirements for hitless switching in which the detection time and the time needed to implement the protection switching are kept within 50 msec. Furthermore, if the switch buffers a sufficient amount of data, the hitless switching can be implemented without any loss of data as errorless switching.
In one embodiment, the present invention is a method for routing signals in a telecommunications network, comprising the steps of: (a) receiving an incoming signal formatted in a transmission format; (b) slicing data in the incoming signal into a plurality of sub-signals; (c) for each sub-signal: (1) dividing the sub-signal into a plurality of subsets of data; (2) applying a checksum function to each subset of data to generate a checkbit for the subset; (3) adding the checkbit for each subset to the sub-signal to generate an augmented sub-signal; (4) routing at least two copies of the augmented sub-signal in parallel through redundant portions of a distributed switch fabric to generate a set of routed sub-signals for the sub-signal; (5) applying the checksum function to at least a first of the routed sub-signals to perform checksum analysis on the routed sub-signals; (6) selecting one of the routed sub-signals in accordance with the checksum analysis; and (7) providing data from the selected routed sub-signal for use in generating an outgoing signal; and (d) combining data from the selected routed sub-signals corresponding to the plurality of sub-signals to generate the outgoing signal.
In another embodiment, the present invention is, in a telecommunications network, a switch for routing one or more incoming signals received in one or more transmission formats to generate one or more outgoing signals, comprising: (a) a slicer for each incoming signal, wherein the slicer slices data in the incoming signal into a plurality of sub-signals; (b) a checkbit generator for each sub-signal, wherein the checkbit generator: (1) divides the sub-signal into a plurality of subsets of data; (2) applies a checksum function to each subset of data to generate a checkbit for the subset; and (3) adds the checkbit for each subset to the sub-signal to generate at least two copies of an augmented sub-signal; (c) redundant portions of a distributed switch fabric, wherein the redundant portions route in parallel the copies of each augmented sub-signal to generate a set of routed sub-signals for the sub-signal; (d) a fault detector for each set of routed sub-signals, wherein the fault detector: (1) applies the checksum function to at least a first of the routed sub-signals to perform checksum analysis on the routed sub-signals; (2) selects one of the routed sub-signals in accordance with the checksum analysis; and (3) provides data from the selected routed sub-signal for use in generating an outgoing signal; and (e) a combiner for each outgoing signal, wherein the combiner combines data from the selected routed sub-signals corresponding to the plurality of sub-signals to generate the outgoing signal.